package com.tudouji.project.company.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.tudouji.framework.aspectj.lang.annotation.Excel;
import com.tudouji.framework.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 公司信息对象 company
 * 
 * @author tudouji
 * @date 2022-04-21
 */
public class Company extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 唯一编码 */
    @Excel(name = "唯一编码")
    private String guid;

    /** 统一信用代码 */
    @Excel(name = "统一信用代码")
    private String creditcode;

    /** 公司名称 */
    @Excel(name = "公司名称")
    private String name;

    /** 公司住所 */
    @Excel(name = "公司住所")
    private String address;

    /** 法定代表人 */
    @Excel(name = "法定代表人")
    private String representative;

    /** 成立日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "成立日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date founddate;

    /** 有效日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "有效日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date validdate;

    /** 创建日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdate;

    /** 最新更新日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最新更新日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lateupdatedate;

    /** 1：实名认证；2：未实名认证（审核不通过）；3：审核中 */
    @Excel(name = "1：实名认证；2：未实名认证", readConverterExp = "审=核不通过")
    private Long valid;

    /** -1:逻辑删除 */
    @Excel(name = "-1:逻辑删除")
    private Long del;

    public void setGuid(String guid) 
    {
        this.guid = guid;
    }

    public String getGuid() 
    {
        return guid;
    }
    public void setCreditcode(String creditcode) 
    {
        this.creditcode = creditcode;
    }

    public String getCreditcode() 
    {
        return creditcode;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setAddress(String address) 
    {
        this.address = address;
    }

    public String getAddress() 
    {
        return address;
    }
    public void setRepresentative(String representative) 
    {
        this.representative = representative;
    }

    public String getRepresentative() 
    {
        return representative;
    }
    public void setFounddate(Date founddate) 
    {
        this.founddate = founddate;
    }

    public Date getFounddate() 
    {
        return founddate;
    }
    public void setValiddate(Date validdate) 
    {
        this.validdate = validdate;
    }

    public Date getValiddate() 
    {
        return validdate;
    }
    public void setCreatedate(Date createdate) 
    {
        this.createdate = createdate;
    }

    public Date getCreatedate() 
    {
        return createdate;
    }
    public void setLateupdatedate(Date lateupdatedate) 
    {
        this.lateupdatedate = lateupdatedate;
    }

    public Date getLateupdatedate() 
    {
        return lateupdatedate;
    }
    public void setValid(Long valid) 
    {
        this.valid = valid;
    }

    public Long getValid() 
    {
        return valid;
    }
    public void setDel(Long del) 
    {
        this.del = del;
    }

    public Long getDel() 
    {
        return del;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("guid", getGuid())
            .append("creditcode", getCreditcode())
            .append("name", getName())
            .append("address", getAddress())
            .append("representative", getRepresentative())
            .append("founddate", getFounddate())
            .append("validdate", getValiddate())
            .append("createdate", getCreatedate())
            .append("lateupdatedate", getLateupdatedate())
            .append("valid", getValid())
            .append("del", getDel())
            .append("remark", getRemark())
            .toString();
    }
}
